﻿

/////////////////////////////////////////////////////////////////////////////////
///              ESCUELA SUPERIOR POLITECNICA DE CHIMBORAZO                   ///
///                        PROYECTO INTEGRADOR IV                            /// 
///                         PROYECTO SICOPS 2011                              /// 
/// ------------------------------------------------------------------------- ///  
///              **********GRUPO DE DESARROLLADORES**********                 ///
///                 ************PEGASO COMPANY*************                    /// 
///---------------------------------------------------------------------------///
///                                                         RIOBAMBA-ECUADOR  ///
///---------------------------------------------------------------------------///
///            FORMULARIO DE ACTUALIZAR LAS UNIDADES EN UN PEDIDO             ///
///---------------------------------------------------------------------------///
///Permite actualizar las unidades de un pedido                                 ///
///                                            Responsable:  Villacres Erika   ///
/////////////////////////////////////////////////////////////////////////////////


using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
//Formulario para la modificacion de los datos de las unidades adquisitivas
namespace Aplicacion.Formularios
{
    public partial class frmActualizarUniDep : Form
    {
        private string varConexion;//Varialble Con la direxion de la conexion
        private string varNumeroA;//Numero del pedido actual

        public frmActualizarUniDep()
        {
            InitializeComponent();
        }

        public frmActualizarUniDep(string Com, string Num)
        {
            InitializeComponent();
            varConexion = Com;//Asignacion de la direccion de la conexion
            varNumeroA = Num;//Numero de pedido actual
        }
        public void setConexion(string Com,string Num)
        {
            varConexion = Com;//Asignacion de la direccion de la conexion
            varNumeroA = Num;//Numero de pedido actual
        }

        private void frmActualizarUniDep_Load(object sender, EventArgs e)
        {
            metInicioCentroCostos();//Inicializa los datos del centro de costos
            metActualizarDatosACPedido();//Inicaializa los numeros de los pedidos registrados
            cmbNumeroAC.Text = varNumeroA;//Asignacion del numero en el caillero de los pedidos

        }

        private void metActualizarDatosACPedido()
        {
            //Metodo para actualizar los estados de los datos ingresados en la tabla pedido
            Negocios.ComponeteNegocios auxCom = new Negocios.ComponeteNegocios();
            coleccionDeDatos1.vs_MostrarPedidos.Clear();
            auxCom.metActualizarDatosACPedido(varConexion,this.coleccionDeDatos1);
        }

        private void metInicioCentroCostos()
        {
            //inicializacion de alguno de los casilleros del ingreso de pedido
            // entre lgunos de ellos se encuentran los del autorizante, solicitante y custodio
            Negocios.ComponeteNegocios auxCom = new Negocios.ComponeteNegocios();
            auxCom.metInicioCentroCostos(varConexion,this.coleccionDeDatos1);
          //Configuracion de la vista que se encuentra registrada en la base de datos
            

        }
        private void metActualizarUnidades()
        {
            //este metodo actualiza el dataset(colecciondedatos1) para ver los nuevos cambios que se produscan en la tabla
            //tDepartamento         
            coleccionDeDatos1.sp_MostraDepSeleccionados.Clear();
            Negocios.ComponeteNegocios auxCom = new Negocios.ComponeteNegocios();
            auxCom.metActualizarUnidades(varConexion, cmbCentroPE.Text, this.coleccionDeDatos1);
            //configuracion del procedimiento que devuelve una tabla
           //Activacion del procedimiento
        }

        private void comCentroPE_SelectedValueChanged(object sender, EventArgs e)
        {
            //Actualiza los datos de los departamento registrados en un centro dado
            metActualizarUnidades();
            btnAtualizarAC.Enabled = true;
        }

        private void btnAtualizarAC_Click(object sender, EventArgs e)
        {
            //Actualizar los pedido registrados
            metActualizarDepPed();
        }

        private void metActualizarDepPed()
        {
            if (MessageBox.Show("¿Desea continuar con la modificacion actual?", "Atencion", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == DialogResult.Yes)
            {
                Negocios.ComponeteNegocios auxCom = new Negocios.ComponeteNegocios();
                auxCom.metActualizarDepPed(varConexion, cmbNumeroAC.Text, txtNuevoCodDepart.Text);
                //Metodo Para modificar los datos de la unidad
            }
           
        }

        private void btnNuevoCentro_Click(object sender, EventArgs e)
        {
            Aplicacion.Formularios.frmEmpresa auxFrm = new frmEmpresa(varConexion);
            auxFrm.ShowDialog();//activa el formulario centro de costos
            coleccionDeDatos1.vs_MostrarUnidadesAd.Clear();//Actualiza el dataset (colecciondedatos1)
            metInicioCentroCostos();//Reinicia la vista del centro de costos
        }

        private void btnNuevaUnidad_Click(object sender, EventArgs e)
        {
            Aplicacion.Formularios.frmDepartamento auxFrm = new frmDepartamento(varConexion);
            auxFrm.ShowDialog();//activa el formulario Departamento o de la unidades de adquisicion
            coleccionDeDatos1.vs_MostrarUnidadesAd.Clear();//Actualiza el dataset (colecciondedatos1)
            metInicioCentroCostos();
        }

        private void comNumeroAC_KeyPress(object sender, KeyPressEventArgs e)
        {            
                e.Handled = true;//Impide escribir en un comboBox
        }
            
    }
}
